有效解决package ‘xxxx‘ is not in GOROOT | 您所在的位置:网站首页 › go111module 关闭 › 有效解决package ‘xxxx‘ is not in GOROOT |
最全总结,一步解决你的问题!
其它报错解决合集: cannot find package “xxx“ in any of的解决方案(完美版) 解决cannot find module providing package 目录 1,项目是mod模式 2,项目未开启mod模式 编译或run go工程时报该错,首先查看环境变量 go env 看GO111MODULE是什么状态。 分为两种情况处理 1,项目是mod模式a) 如果GO111MODULE=on,则看看工程下面是否有go.mod文件,如果没有则go mod init一下 完事后 go mod tidy即可; b) 如果GO111MODULE=on,且有go.mod,则直接go mod tidy; c) 如果GO111MODULE=off,则开启mod模式 export GO111MODULE="on",然后继续走a) d) 还有一种情况,本地go mod项目如果想手动传到linux上进行编译运行,若直接把go.mod文件直接传上去,则也会报这个错,正确的做法是在Linux目录下新创建该项目并执行go mod init ,然后把本地工程所有文件包括go.mod传上去再build,这时候就正常了哦 2,项目未开启mod模式此时默认从$GOPATH下扫描,如果是在linux下编译或运行,则关闭GO111MODULE: export GO111MODULE="off" source /etc/profile 关闭后可go env再查一查是否生效; 如果是在goland下,则去掉该按钮-->ok -->鼠标空白处点点即可正常: |
CopyRight 2018-2019 实验室设备网 版权所有 |